#ifndef SEMANTICNODEBLOCKSPLIT_H_
#define SEMANTICNODEBLOCKSPLIT_H_

#include "SemanticNode.h"
#include "LabeledNode.h"
#include <string>
#include <vector>

class SemanticNodeExpression;

class SemanticNodeBlockSplit : public SemanticNode, public LabeledNode {
private:
	SemanticNodeExpression *intoExpression;
	std::string sendToName;
	bool into, sendTo;

public:
	SemanticNodeBlockSplit(const SyntaxTreeNode *splitNodeParent, SemanticNode *parent);

	void setIntoExpression(SemanticNodeExpression *into);

	bool hasInto();
	bool hasSendTo();

	virtual std::string toDebugString(int tab);
};

#endif /* SEMANTICNODEBLOCKSPLIT_H_ */